home *** CD-ROM | disk | FTP | other *** search
/ Amiga Magazin: Amiga-CD 1996 March / Amiga-CD 1996 #3.iso / pd-software / mui_3.1 / developer / oberon / txt / muidataspace.mod < prev    next >
Text File  |  1996-01-19  |  3KB  |  86 lines

  1. MODULE MUIDataspace;
  2.  
  3. (* $StackChk- $NilChk- $RangeChk- $CaseChk- $OvflChk- $ReturnChk- $ClearVars- *)
  4.  
  5. (* This module is generated by "GenMuiO" © 1995 by Albert Weinert *)
  6.  
  7. IMPORT
  8.   clf := Classface,
  9.   e := Exec,
  10.   m := Mui,
  11.   RootClass,
  12.   SuperClass := MUISemaphore,
  13.   I := Intuition;
  14.  
  15. CONST
  16.   name *= m.cDataspace;
  17.  
  18. TYPE
  19.   Class     *= UNTRACED POINTER TO ClassDesc;
  20.   ClassDesc *= RECORD( SuperClass.ClassDesc ) END;
  21.  
  22. VAR
  23.   class * : I.IClassPtr;
  24.  
  25.    PROCEDURE ( VAR c : ClassDesc ) mAdd*( VAR msg : m.pDataspaceAdd ):e.APTR;
  26.      BEGIN
  27.        msg.msg.methodID := m.mDataspaceAdd;
  28.        RETURN clf.DoSuperMethodA( c.class, c.object, msg )
  29.      END mAdd;
  30.  
  31.    PROCEDURE ( VAR c : ClassDesc ) mClear*( VAR msg : m.pDataspaceClear ):e.APTR;
  32.      BEGIN
  33.        msg.msg.methodID := m.mDataspaceClear;
  34.        RETURN clf.DoSuperMethodA( c.class, c.object, msg )
  35.      END mClear;
  36.  
  37.    PROCEDURE ( VAR c : ClassDesc ) mMerge*( VAR msg : m.pDataspaceMerge ):e.APTR;
  38.      BEGIN
  39.        msg.msg.methodID := m.mDataspaceMerge;
  40.        RETURN clf.DoSuperMethodA( c.class, c.object, msg )
  41.      END mMerge;
  42.  
  43.    PROCEDURE ( VAR c : ClassDesc ) mReadIFF*( VAR msg : m.pDataspaceReadIFF ):e.APTR;
  44.      BEGIN
  45.        msg.msg.methodID := m.mDataspaceReadIFF;
  46.        RETURN clf.DoSuperMethodA( c.class, c.object, msg )
  47.      END mReadIFF;
  48.  
  49.    PROCEDURE ( VAR c : ClassDesc ) mRemove*( VAR msg : m.pDataspaceRemove ):e.APTR;
  50.      BEGIN
  51.        msg.msg.methodID := m.mDataspaceRemove;
  52.        RETURN clf.DoSuperMethodA( c.class, c.object, msg )
  53.      END mRemove;
  54.  
  55.    PROCEDURE ( VAR c : ClassDesc ) mWriteIFF*( VAR msg : m.pDataspaceWriteIFF ):e.APTR;
  56.      BEGIN
  57.        msg.msg.methodID := m.mDataspaceWriteIFF;
  58.        RETURN clf.DoSuperMethodA( c.class, c.object, msg )
  59.      END mWriteIFF;
  60.  
  61.   PROCEDURE Dispatch * ( cl : I.IClassPtr; obj : I.ObjectPtr; msg : I.MsgPtr ):e.APTR;
  62.     VAR c : Class;
  63.     BEGIN
  64.       IF msg.methodID # I.new THEN
  65.         c := RootClass.BoopsiToObj( cl, obj )(Class);
  66.       END;
  67.  
  68.       CASE msg.methodID OF
  69.         | m.mDataspaceAdd             : RETURN c.mAdd( msg^(m.pDataspaceAdd) );
  70.         | m.mDataspaceClear           : RETURN c.mClear( msg^(m.pDataspaceClear) );
  71.         | m.mDataspaceMerge           : RETURN c.mMerge( msg^(m.pDataspaceMerge) );
  72.         | m.mDataspaceReadIFF         : RETURN c.mReadIFF( msg^(m.pDataspaceReadIFF) );
  73.         | m.mDataspaceRemove          : RETURN c.mRemove( msg^(m.pDataspaceRemove) );
  74.         | m.mDataspaceWriteIFF        : RETURN c.mWriteIFF( msg^(m.pDataspaceWriteIFF) );
  75.       ELSE
  76.         RETURN SuperClass.Dispatch( cl, obj, msg );
  77.       END;
  78.     END Dispatch;
  79.  
  80. BEGIN
  81.   class := m.GetClass( name );
  82.   IF class = NIL THEN HALT( 205 ) END; (* Error : Object not Found *)
  83. CLOSE
  84.   IF class # NIL THEN m.FreeClass( class ) END;
  85. END MUIDataspace.
  86.